home *** CD-ROM | disk | FTP | other *** search
- ;; ja-anthy.mim -- Japanese input method using Anthy as a conversion server.
- ;; Copyright (C) 2003, 2004, 2005, 2006
- ;; National Institute of Advanced Industrial Science and Technology (AIST)
- ;; Registration Number H15PRO112
-
- ;; This file is part of the m17n library.
-
- ;; The m17n library is free software; you can redistribute it and/or
- ;; modify it under the terms of the GNU Lesser General Public License
- ;; as published by the Free Software Foundation; either version 2.1 of
- ;; the License, or (at your option) any later version.
-
- ;; The m17n library is distributed in the hope that it will be useful,
- ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
- ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ;; Lesser General Public License for more details.
-
- ;; You should have received a copy of the GNU Lesser General Public
- ;; License along with the m17n library; if not, write to the Free
- ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- ;; Boston, MA 02110-1301, USA.
-
- (input-method ja anthy)
-
- (description "Japanese input method with Anthy as a kana-kanji converter.
- Typed roma-ji is at first converted to Hiragana,
- and Space key converts the Hiragana sequences
- to Kanji-Hiragana mixed sequence.
-
- This input method uses the loadable module libmimx-anthy.so to
- communicate with Anthy. For more detail about Anthy, see the page
- <http://sourceforge.jp/projects/anthy/>.
- ")
-
- (title "aπüé")
-
- (variable
- (input-mode
- "Hiragana or Katakana (not yet implemented)
- Select Hiragana or Katakana"
- hiragana
- hiragana katakana)
- (zen-han
- "Zenkaku or Hankaku (not yet implemented)"
- zenkaku
- hankaku zenkaku))
-
- (command
- (convert) (commit))
-
- (module
- (libmimx-anthy convert resize change commit init fini))
-
- (map
- (starter
- ("a") ("i") ("u") ("e") ("o")
- ("k") ("s") ("t") ("n") ("h") ("m") ("y") ("r") ("l") ("w")
- ("g") ("z") ("d") ("b") ("p")
- ("c") ("j") ("f") ("x") ("v")
- ("1") ("2") ("3") ("4") ("5") ("6") ("7") ("8") ("9") ("0")
- ("!") ("@") ("#") ("$") ("%") ("^") ("&") ("*") ("(") (")")
- ("-") ("=") ("`") ("\\") ("|") ("_") ("+") ("~") ("[") ("]")
- ("{") ("}") (":") (";") ("\"") ("'") (".") (",") ("<") (">")
- ("?") ("/"))
-
- (ordinary
- ( "a" "πüé") ( "i" "πüä") ( "u" "πüå") ( "e" "πüê") ( "o" "πüè")
- ("ka" "か") ("ki" "き") ("ku" "く") ("ke" "け") ("ko" "こ")
- ("sa" "さ") ("si" "し") ("su" "す") ("se" "せ") ("so" "そ")
- ("ta" "た") ("ti" "ち") ("tu" "つ") ("te" "て") ("to" "と")
- ("na" "な") ("ni" "に") ("nu" "ぬ") ("ne" "ね") ("no" "の")
- ("ha" "は") ("hi" "ひ") ("hu" "ふ") ("he" "へ") ("ho" "ほ")
- ("ma" "ま") ("mi" "み") ("mu" "む") ("me" "め") ("mo" "も")
- ("ya" "πéä") ("yu" "πéå") ("yo" "πéê")
- ("ra" "πéë") ("ri" "πéè") ("ru" "πéï") ("re" "πéî") ("ro" "πéì")
- ("la" "πéë") ("li" "πéè") ("lu" "πéï") ("le" "πéî") ("lo" "πéì")
- ("wa" "わ") ("wi" "ゐ") ("wu" "う") ("we" "ゑ") ("wo" "を")
- ("ga" "が") ("gi" "ぎ") ("gu" "ぐ") ("ge" "げ") ("go" "ご")
- ("za" "ざ") ("zi" "じ") ("zu" "ず") ("ze" "ぜ") ("zo" "ぞ")
- ("da" "だ") ("di" "ぢ") ("du" "づ") ("de" "で") ("do" "ど")
- ("ba" "ば") ("bi" "び") ("bu" "ぶ") ("be" "べ") ("bo" "ぼ")
- ("pa" "ぱ") ("pi" "ぴ") ("pu" "ぷ") ("pe" "ぺ") ("po" "ぽ")
-
- ("kya" "πüìπéâ") ("kyu" "πüìπéà") ("kye" "πüìπüç") ("kyo" "πüìπéç")
- ("sya" "πüùπéâ") ("syu" "πüùπéà") ("sye" "πüùπüç") ("syo" "πüùπéç")
- ("sha" "πüùπéâ") ("shu" "πüùπéà") ("she" "πüùπüç") ("sho" "πüùπéç")
- ("cha" "πüíπéâ") ("chu" "πüíπéà") ("che" "πüíπüç") ("cho" "πüíπéç")
- ("tya" "πüíπéâ") ("tyu" "πüíπéà") ("tye" "πüíπüç") ("tyo" "πüíπéç")
- ("nya" "πü½πéâ") ("nyu" "πü½πéà") ("nye" "πü½πüç") ("nyo" "πü½πéç")
- ("hya" "ひゃ") ("hyu" "ひゅ") ("hye" "ひぇ") ("hyo" "ひょ")
- ("mya" "みゃ") ("myu" "みゅ") ("mye" "みぇ") ("myo" "みょ")
- ("rya" "πéèπéâ") ("ryu" "πéèπéà") ("rye" "πéèπüç") ("ryo" "πéèπéç")
- ("lya" "πéèπéâ") ("lyu" "πéèπéà") ("lye" "πéèπüç") ("lyo" "πéèπéç")
- ("gya" "ぎゃ") ("gyu" "ぎゅ") ("gye" "ぎぇ") ("gyo" "ぎょ")
- ("zya" "πüÿπéâ") ("zyu" "πüÿπéà") ("zye" "πüÿπüç") ("zyo" "πüÿπéç")
- ("jya" "πüÿπéâ") ("jyu" "πüÿπéà") ("jye" "πüÿπüç") ("jyo" "πüÿπéç")
- ( "ja" "πüÿπéâ") ( "ju" "πüÿπéà") ( "je" "πüÿπüç") ( "jo" "πüÿπéç")
- ("bya" "びゃ") ("byu" "びゅ") ("bye" "びぇ") ("byo" "びょ")
- ("pya" "ぴゃ") ("pyu" "ぴゅ") ("pye" "ぴぇ") ("pyo" "ぴょ")
-
- ("kwa" "くゎ") ("kwi" "くぃ") ("kwe" "くぇ") ("kwo" "くぉ")
- ("tsa" "πüñπüü") ("tsi" "πüñπüâ") ("tse" "πüñπüç") ("tso" "πüñπüë")
- ( "fa" "ふぁ") ( "fi" "ふぃ") ( "fe" "ふぇ") ( "fo" "ふぉ")
- ("gwa" "ぐゎ") ("gwi" "ぐぃ") ("gwe" "ぐぇ") ("gwo" "ぐぉ")
-
- ("dyi" "でぃ") ("dyu" "どぅ") ("dye" "でぇ") ("dyo" "どぉ")
- ("xwi" "πüåπüâ") ("xwe" "πüåπüç") ("xwo" "πüåπüë")
-
- ("shi" "し") ("tyi" "てぃ") ("chi" "ち") ("tsu" "つ") ("ji" "じ")
- ("fu" "ふ")
- ("ye" "πüäπüç")
-
- ("va" "ヴぁ") ("vi" "ヴぃ") ("vu" "ヴ") ("ve" "ヴぇ") ("vo" "ヴぉ")
-
- ("xa" "πüü") ("xi" "πüâ") ("xu" "πüà") ("xe" "πüç") ("xo" "πüë")
- ("xtu" "っ") ("xya" "ゃ") ("xyu" "ゅ") ("xyo" "ょ") ("xwa" "ゎ")
- ("xka" "ヵ") ("xke" "ヶ"))
-
- (alnum
- ("1" "1") ("2" "2") ("3" "3") ("4" "4") ("5" "5")
- ("6" "6") ("7" "7") ("8" "8") ("9" "9") ("0" "0")
-
- ("!" "!") ("@" "@") ("#" "#") ("$" "$") ("%" "%")
- ("^" "^") ("&" "&") ("*" "*") ("(" "(") (")" ")")
- ("-" "ー") ("=" "=") ("`" "`") ("\\" "¥") ("|" "|")
- ("_" "_") ("+" "+") ("~" " ̄") ("[" "「") ("]" "」")
- ("{" "{") ("}" "}") (":" ":") (";" ";") ("\"" "”")
- ("'" "’") ("." "。") ("," "、") ("<" "<") (">" ">")
- ("?" "?") ("/" "/"))
-
- (symbol
- ("z1" "Γùï") ("z!" "ΓùÅ")
- ("z2" "Γû╜") ("z@" "Γû╝")
- ("z3" "Γû│") ("z#" "Γû▓")
- ("z4" "Γûí") ("z$" "Γûá")
- ("z5" "Γùç") ("z%" "Γùå")
- ("z6" "Γÿå") ("z^" "Γÿà")
- ("z7" "◎") ("z&" "£")
- ("z8" "¢") ("z*" "×")
- ("z9" "♂") ("z(" "【")
- ("z0" "♀") ("z)" "】")
- ("z-" "〜") ("z_" "∴")
- ("z=" "Γëá") ("z+" "┬▒")
- ("z\\" "\") ("z|" "‖")
- ("z`" "´") ("z~" "¨")
-
- ("zq" "《") ("zQ" "〈")
- ("zw" "》") ("zW" "〉")
- ("zr" "々") ("zR" "仝")
- ("zt" "〆") ("zT" "§")
- ("zp" "〒") ("zP" "↑")
- ("z[" "『") ("z{" "〔")
- ("z]" "』") ("z}" "〕")
-
- ("zs" "ヽ") ("zS" "ヾ")
- ("zd" "ゝ") ("zD" "ゞ")
- ("zf" "〃") ("zF" "→")
- ("zg" "ΓÇÉ") ("zG" "ΓÇò")
- ("zh" "←")
- ("zj" "Γåô")
- ("zk" "Γåæ")
- ("zl" "→")
- ("z;" "゛") ("z:" "゜")
- ("z\'" "ΓÇÿ") ("z\"" "ΓÇ£")
-
- ("zx" ":-") ("zX" ":-)")
- ("zc" "〇") ("zC" "℃")
- ("zv" "※") ("zV" "÷")
- ("zb" "°") ("zB" "←")
- ("zn" "′") ("zN" "↓")
- ("zm" "″") ("zM" "〓")
- ("z," "‥") ("z<" "≦")
- ("z." "…") ("z>" "≧")
- ("z/" "・") ("z?" "∞"))
-
- (hatsuon
- ("n" "n"))
-
- (sokuon
- ("kk")
- ("ss")
- ("tt")
- ("hh")
- ("mm")
- ("rr")
- ("ll")
- ("ww")
- ("gg")
- ("zz")
- ("dd")
- ("bb")
- ("pp")
- ("cc")
- ("jj")
- ("ff"))
-
- (henkan
- (convert))
-
- (kakutei
- (commit))
-
- (backspace
- ((BackSpace)))
-
- (edit
- ((Delete) (delete @+))
- ((BackSpace) (delete @-))
- ((Left) (move @-))
- ((Right) (move @+)))
-
- (henkan-edit
- ((Left) (move @\[))
- ((Right) (move @\]))
- ((S-Left) (call libmimx-anthy resize t))
- ((S-Right) (call libmimx-anthy resize nil)))
-
- (choose
- ("1" (select 0))
- ("2" (select 1))
- ("3" (select 2))
- ("4" (select 3))
- ("5" (select 4))
- ("6" (select 5))
- ("7" (select 6))
- ("8" (select 7))
- ("9" (select 8))
- ("0" (select 9)))
-
- (change-candidate
- ((C-A) (select @<))
- ((C-P) (select @\[))
- ((C-B) (select @-))
- ((Up) (select @-))
- (" " (select @+))
- ((C-F) (select @+))
- ((Down) (select @+))
- ((C-N) (select @\]))
- ((C-E) (select @>)))
- )
-
- (state
- (init
- "aπüé"
- (starter (pushback 1) (shift pre-henkan)))
-
- (pre-henkan
- (ordinary)
- (alnum)
- (symbol)
- (hatsuon (shift hatsuon))
- (sokuon (insert "πüú") (pushback 1))
- (henkan (call libmimx-anthy convert) (shift henkan))
- (kakutei (shift init))
- (backspace (pushback 1) (shift edit))
- (nil (shift fail)))
-
- (hatsuon
- (hatsuon (delete @-) (delete @-) (insert "πéô") (shift pre-henkan))
- (nil (delete @-) (insert "πéô") (shift pre-henkan)))
-
- (henkan
- "漢"
- (t (set K @@) (sub K 1))
- (henkan-edit)
- (change-candidate (call libmimx-anthy change) (show) (shift henkan2))
- (choose (hide) (shift init))
- (kakutei (call libmimx-anthy commit) (shift init))
- (backspace (undo K))
- (nil (call libmimx-anthy commit) (shift init)))
-
- (henkan2
- "漢"
- (change-candidate (call libmimx-anthy change) (show))
- (backspace (undo K))
- (nil (hide) (shift henkan)))
-
- (fail
- (backspace (undo))
- (starter (pushback 1) (shift pre-henkan))
- (nil (shift edit)))
-
- (edit
- (edit (set C @0) (< C 0 ((shift init))))
- (starter (pushback 1) (shift pre-henkan))
- (henkan (call libmimx-anthy convert) (shift henkan))
- (kakutei (shift init))))
-
- ;; Local Variables:
- ;; mode: lisp
- ;; coding: utf-8
- ;; End:
-